热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

小时|歧义_SpringBoot课程和新书《SpringBoot入门与实践》延迟发版

篇首语:本文由编程笔记#小编为大家整理,主要介绍了SpringBoot课程和新书《SpringBoot入门与实践》延迟发版相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了Spring Boot课程和新书《Spring Boot入门与实践》延迟发版相关的知识,希望对你有一定的参考价值。



1、新书延迟出版

新书即将出版之际,需要稍微延迟,延迟原因:

本想Spring Boot新书可以快速发版,没有想到Spring boot 2.0GA 即将发布,新书打算延迟2周到1个月左右发版。

将书籍中的版本从1.5.9升级到目前的RC版本,做兼容测试和部分修正,因此延迟发版2周到1个月左右。


2、相关课程说明

录播课程也在努力中,目前录播了15个小时左右的课程,讲到数据库事务。打算基础入门免费的形式提供,大约25节课,平均40分钟一节,大约1100分钟(18小时)全部免费。

下面是目录:

其中红色的目录章节以免费课程提供,主要是框架基础,让入门新手学学学。

而蓝色以收费形式提供,主要为企业的应用为主,支持在线答疑,价格预计在100-300之间波动,不造成新手的经济负担。




第1章 Spring Boot来临    2

1.1 Spring的历史    2

1.2 注解还是XML?    3

1.3 Spring Boot的优点    4

1.4 传统Spring MVC和Spring Boot的对比    4

第2章 聊聊开发环境搭建和基本开发    12

2.1 搭建Spring Boot开发环境    12

2.1.1 搭建Eclipse开发环境    12

2.1.2 搭建IntelliJ IDEA开发环境    16

2.2 Spring Boot的依赖和自动配置    18

2.3 使用自定义配置    22

2.4 开发自己的Spring Boot项目    24

第3章 全注解下的Spring IoC    27

3.1 IoC容器的简介    27

3.2 装配你的Bean    31

3.2.1 通过扫描装配你的Bean    31

3.2.2 自定义第三方Bean    36

3.3 依赖注入    37

3.3.1 注解@Autowired    39

3.3.2 消除歧义性——@Primary和@Quelifier    41

3.3.3 带有参数的构造方法类的装配    42

3.4 生命周期    43

3.5 使用属性文件    49

3.6 条件装配Bean    52

3.7 Bean的作用域    54

3.8 使用@Profile    55

3.9 引入XML配置Bean    57

3.10 使用Spring EL    58

第4章 开始约定编程——Spring AOP    61

4.1 约定编程    61

4.1.1 约定    61

4.1.2 ProxyBean的实现    66

4.1.3 总结    69

4.2 AOP的概念    70

4.2.1 为什么使用AOP    70

4.2.1 AOP 术语和流程    73

4.3 AOP开发详解    75

4.3.1 确定连接点    75

4.3.2 开发切面    75

4.3.3 切点定义    76

4.3.4 测试AOP    78

4.3.5 环绕通知    81

4.3.6引入    83

4.3.7 通知获取参数    85

4.3.8 织入    86

4.4 多个切面    88

第5章访问数据库 94

5.1 配置数据源    94

5.1.1 启动默认数据源    94

5.1.2 配置自定义数据源    95

5.2 使用JdbcTemplate操作数据库    99

5.3 使用JPA(Hibernate)操作数据    103

5.3.1 概述    103

5.3.2 开发JPA    103

5.4 整合MyBatis框架    109

5.4.1 MyBatis简介    110

5.4.2 MyBatis的配置    110

5.4.3 Spring Boot整合MyBatis    115

5.4.4 MyBatis的其他配置    118





第6章 聊聊数据库事务处理 122

6.1 JDBC的数据库事务    123

6.2 Spring声明式事务的使用    125

6.2.1 Spring声明式数据库事务约定    125

6.2.2 @Transactional的配置项    127

6.2.3 Spring事务管理器    129

6.2.4 测试数据库事务    130

6.3 隔离级别    135

6.3.1 数据库事务的知识    135

6.3.2 隔离级别    137

6.4 传播行为    141

6.4.1 传播行为的定义    142

6.4.2 测试传播行为    143

6.5 @Transactional自调用失效问题    148

第7章 使用性能利器——Redis 154

7.1 spring data redis项目简介    155

7.1.1 spring data redis项目的设计    155

7.1.2 RedisTemplate 156

7.1.3 Spring对Redis数据类型操作的封装    160


7.1.4 SessionCallback和RedisCallback接口    161

7.2 在Spring Boot中配置和使用Redis    163

7.2.1 在Spring Boot中配置Redis    163

7.2.2 操作Redis数据类型    164

7.3 Redis的一些特殊用法    169

7.3.1 使用Redis事务    170

7.3.2 使用Redis流水线    171

7.3.3 使用Redis发布订阅    172

7.3.4 使用Lua脚本    176

7.4 使用Spring缓存注解操作Redis    179

7.4.1 缓存管理器和缓存的启用    179

7.4.2 开发缓存注解    181

7.4.3 测试缓存注解    187

7.4.4 缓存注解自调用失效问题    190

7.4.5 缓存脏数据说明    190

7.4.6 自定义缓存管理器    191

第8章 文档数据库——MongoDB 194

8.1 配置MongoDB    195

8.2 使用MongoTemplate实例    196

8.2.1 搭建开发环境    196

8.2.1 使用MongoTemplate操作文档    200

8.3 使用JPA    206

8.3.1 基本用法    206

8.3.2 使用自定义查询    208





第9章 初识Spring MVC 211

9.1 Spring MVC框架的设计    211

9.2 Spring MVC流程    212

9.3 定制Spring MVC的初始化    220

9.4 Spring MVC实例    221

9.4.1 开发控制器    221

9.4.2 视图和视图渲染    222





第10章 深入Spring MVC开发    227

10.1 处理器映射    227

10.2 获取控制器参数    228

10.2.1 在无注解下获取参数    228

10.2.2 使用@RequestParam获取参数    229

10.2.3 传递数组    230

10.2.4 传递JSON    231

10.2.5 通过URL传递参数    234

10.2.6 获取格式化参数参数    235

10.3 自定义参数转换规则    237

10.3.1 处理器获取参数逻辑    237

10.3.2 一对一转换器(Converter)    241

10.3.3 GenericConverter集合和数组转换    242

10.4 数据验证    243

10.4.1 JSR-303 验证    243

10.4.2 参数验证机制    247

10.5 数据模型    251

10.6 视图和视图解析器    253

10.6.1 视图设计    253

10.6.2 视图实例——导出PDF文件    255

10.7 文件上传    259

10.7.1 Spring MVC对文件上传的支持    259

10.7.2 开发文件上传功能    261

10.8 拦截器    264

10.8.1 拦截器的设计    264

10.8.2 开发拦截器    265

10.8.3 多个拦截器的顺序    268

10.9 国际化    271

10.9.1 国际化消息源    271

10.9.2 国际化解析器    273

10.9.3 国际化实例——SessionLocaleResolver    274

10.10 Spring MVC拾遗    278

10.10.1 @ResponseBody转换为JSON的秘密    278

10.10.2 重定向    279

10.10.3 操作会话对象    281

10.10.4 给控制器增加通知    284

10.10.5 获取请求头参数    286

第11章 构建REST风格网站    289

11.1 RESTful简述    289

11.1.1 REST名词解释    289

11.1.2 HTTP的动作    290

11.1.3 RESTful的一些误区    291

11.2 使用Spring MVC开发REST风格端点    291

11.2.1 Spring MVC整合REST    291

11.2.2 使用Spring开发REST风格的端点    292

11.2.3 使用@RestController    301

11.2.4 渲染结果    302

11.2.5 处理HTTP状态码、异常和响应头    304

11.3 客户端请求RestTemplate    309

11.3.1  使用RestTemplate请求后端    309

11.3.2 获取响应头、状态码和资源交换    311

第12章 安全——Spring Security    314

12.1 概述和简单安全认证    314

12.2 使用WebSecurityConfigurerAdapter自定义    317

12.3 自定义用户服务信息    318

12.3.1 使用内存签名服务    318

12.3.2 使用数据库定义用户认证服务    320

12.3.3 使用自定义用户认证服务    323

12.4 限制请求    325

12.4.1 配置请求路径访问权限    326

12.4.2 使用Spring表达式配置访问权限    328

12.4.3 强制使用HTTPS    329

12.4.3 防止跨站点请求伪造    330

12.5 用户认证功能    331

12.5.1 自定义登录页面    331

12.5.2 启用HTTP Basic认证    333

12.5.3 登出    334

第13章 学点Spring其他的技术    336

13.1 异步线程池    336

13.1.2 定义线程池和开启异步可用    337

13.1.2 异步实例    337

13.2 异步消息    339

13.2.1 JMS实例——ActiveMQ    340

13.2.2 使用AMQP——RabbitMQ    345

13.3 定时任务    349

13.4 WebSocket 应用    353

13.4.1 开发简易的WebSocket服务    353

13.4.2 使用STOMP    359

第14章 Spring 5新框架——WebFlux    369

14.1 基础概念    369

14.1.1 响应式编程的宣言    369

14.1.2 Reactor模型    370

14.1.3 Spring WebFlux的概述    371

14.1.4 WebHandler接口和运行流程    373

14.2 通过Spring MVC方式开发WebFlux服务端    375

14.2.1 开发持久层    375

14.2.2 开发服务层    377

14.2.3 开发控制层    378

14.2.4 配置服务    380

14.2.5客户端开发——WebClient    382

14.3 深入WebFlux服务端开发    386

14.3.1 类型转换器——Converter    387

14.3.2 验证器——Validator    388

14.3.3 访问静态资源    390

14.4 深入客户端开发    390

14.4.1 处理服务端错误和转换    391

14.4.3 设置请求头    393

14.5 使用路由函数方式开发WebFlux    394

14.5.1 开发处理器    394

14.5.2 开发请求路由    399

14.5.3 使用过滤器    401

第15章 实践一下——抢购商品    403

15.1 设计与开发    403

15.1.1 数据库表设计    403

15.1.2 使用MyBatis开发持久层    404

15.1.3 使用Spring开发业务层和控制层    407

15.1.4 测试和配置    410

15.2 高并发开发    412

15.2.1 超发现象    412

15.2.2 悲观锁    414

15.2.3 乐观锁    415

15.2.4 使用Redis处理高并发    421





第16章 部署、测试和监控    428

16.1 部署和运行    428

16.1.1 打包    428

16.1.2 运行项目    430

16.1.3 热部署    432

16.2 测试    433

16.2.1 构建测试类    433

16.2.2 使用随机端口和REST风格测试    435

16.2.3 Mock测试    435

16.3 Actuator监控端点    437

16.4 HTTP监控    438

16.4.1 查看敏感信息    439

16.4.2 shutdown端点    441

16.4.3 配置端点    442

16.4.4 自定义端点    444

16.4.5 健康指标项    447

16.5 JMX监控    450

第17章 分布式开发——Spring Cloud    452

17.1 服务治理和服务发现——Eureka    454

17.1.1 配置服务治理节点    454

17.1.2 服务发现    456

17.1.3 配置多个服务治理中心节点    459

17.2 微服务之间的调用    462

17.2.1 Ribbon客户端负载均衡    462

17.2.1 Feign声明式调用    466

17.3 断路器——Hystrix    469

17.3.1 使用降级服务    470

17.3.1 启用Hystrix仪表盘    473

17.4 路由网关——Zuul    475

17.4.1 构建Zuul网关    476

17.4.2 使用过滤器    478

17.5 使用@SpringCloudApplication    482

附录    484


A.1 选择内嵌服务器    484

A.2 修改商标    484

A.3 深入Spring Boot自动装配    487




推荐阅读
  • Cookie学习小结
    Cookie学习小结 ... [详细]
  • V8不仅是一款著名的八缸发动机,广泛应用于道奇Charger、宾利Continental GT和BossHoss摩托车中。自2008年以来,作为Chromium项目的一部分,V8 JavaScript引擎在性能优化和技术创新方面取得了显著进展。该引擎通过先进的编译技术和高效的垃圾回收机制,显著提升了JavaScript的执行效率,为现代Web应用提供了强大的支持。持续的优化和创新使得V8在处理复杂计算和大规模数据时表现更加出色,成为众多开发者和企业的首选。 ... [详细]
  • 深入理解Java中的多态性概念及其应用
    多态是面向对象编程中的三大核心特性之一,与封装和继承共同构成了面向对象的基础。多态使得代码更加灵活和可扩展,封装和继承则为其提供了必要的支持。本文将深入探讨多态的概念及其在Java中的具体应用,帮助读者全面理解和掌握这一关键知识点。 ... [详细]
  • 如何撰写适应变化的高效代码:策略与实践
    编写高质量且适应变化的代码是每位程序员的追求。优质代码的关键在于其可维护性和可扩展性。本文将从面向对象编程的角度出发,探讨实现这一目标的具体策略与实践方法,帮助开发者提升代码效率和灵活性。 ... [详细]
  • 在开发过程中,我最初也依赖于功能全面但操作繁琐的集成开发环境(IDE),如Borland Delphi 和 Microsoft Visual Studio。然而,随着对高效开发的追求,我逐渐转向了更加轻量级和灵活的工具组合。通过 CLIfe,我构建了一个高度定制化的开发环境,不仅提高了代码编写效率,还简化了项目管理流程。这一配置结合了多种强大的命令行工具和插件,使我在日常开发中能够更加得心应手。 ... [详细]
  • 小王详解:内部网络中最易理解的NAT原理剖析,挑战你的认知极限
    小王详解:内部网络中最易理解的NAT原理剖析,挑战你的认知极限 ... [详细]
  • 动态壁纸 LiveWallPaper:让您的桌面栩栩如生(第二篇)
    在本文中,我们将继续探讨如何开发动态壁纸 LiveWallPaper,使您的桌面更加生动有趣。作为 2010 年 Google 暑期大学生博客分享大赛 Android 篇的一部分,我们将详细介绍 Ed Burnette 的《Hello, Android》第三版中的相关内容,并分享一些实用的开发技巧和经验。通过本篇文章,您将了解到如何利用 Android SDK 创建引人入胜的动态壁纸,提升用户体验。 ... [详细]
  • Eclipse JFace Text框架中IDocument接口的getNumberOfLines方法详解与编程实例 ... [详细]
  • 本文作为“实现简易版Spring系列”的第五篇,继前文深入探讨了Spring框架的核心技术之一——控制反转(IoC)之后,将重点转向另一个关键技术——面向切面编程(AOP)。对于使用Spring框架进行开发的开发者来说,AOP是一个不可或缺的概念。了解AOP的背景及其基本原理,对于掌握这一技术至关重要。本文将通过具体示例,详细解析AOP的实现机制,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 本文详细介绍了 Spark 中的弹性分布式数据集(RDD)及其常见的操作方法,包括 union、intersection、cartesian、subtract、join、cogroup 等转换操作,以及 count、collect、reduce、take、foreach、first、saveAsTextFile 等行动操作。 ... [详细]
  • 基于JSP和SSM框架的超市收银系统毕业设计论文及源代码分析
    本研究基于JSP和SSM框架开发了一套超市收银系统,旨在提升超市收银效率和管理便捷性。系统运行环境包括JDK 1.8、Tomcat 7.0、MySQL数据库以及HBuilderX(也可使用WebStorm)作为前端开发工具,后端开发则采用Eclipse(IntelliJ IDEA亦可)。该系统实现了商品管理、订单处理、库存管理和报表生成等核心功能,具有良好的稳定性和扩展性。通过详细的设计与实现过程,本文为相关领域的研究提供了有价值的参考。 ... [详细]
  • 基于试题数据的智能化管理平台采用Java语言进行面向对象编程,旨在构建一个高效的试题信息管理系统。该系统在JDK 6.0和MyEclipse 10.6环境下开发,通过优化试题数据管理和处理流程,提升系统的稳定性和用户体验。平台支持多用户操作,具备强大的数据处理能力和灵活的扩展性,适用于各类教育机构和考试组织。 ... [详细]
  • 如何有效防御网站中的SQL注入攻击
    本期文章将深入探讨网站如何有效防御SQL注入攻击。我们将从技术层面详细解析防范措施,并结合实际案例进行阐述,旨在帮助读者全面了解并掌握有效的防护策略。希望本文能为您的网络安全提供有益参考。 ... [详细]
  • ButterKnife 是一款用于 Android 开发的注解库,主要用于简化视图和事件绑定。本文详细介绍了 ButterKnife 的基础用法,包括如何通过注解实现字段和方法的绑定,以及在实际项目中的应用示例。此外,文章还提到了截至 2016 年 4 月 29 日,ButterKnife 的最新版本为 8.0.1,为开发者提供了最新的功能和性能优化。 ... [详细]
  • 在使用SSH框架进行项目开发时,经常会遇到一些常见的问题。例如,在Spring配置文件中配置AOP事务声明后,进行单元测试时可能会出现“No Hibernate Session bound to thread”的错误。本文将详细探讨这一问题的原因,并提供有效的解决方案,帮助开发者顺利解决此类问题。 ... [详细]
author-avatar
mobiledu2502884677
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有